home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Joystick Magazine 1995 July & August
/
cd No4 joystick No62.iso
/
mac
/
pc
/
SHARE
/
LIGHTLIB
/
LANGUAGE.Z
/
LLI.H
< prev
next >
Wrap
C/C++ Source or Header
|
1995-02-17
|
9KB
|
191 lines
#include "llo.h"
// LIBRARY
#define LLO_LIBRARY_IMAGE 0x01000000
// CLASSES
#define LLI_CLASS_APPLICATION LLO_LIBRARY_IMAGE + 0x000000
#define LLI_CLASS_IMAGE LLO_LIBRARY_IMAGE + 0x010000
// IMAGE APPLICATION
#define LLI_APPLICATION_VERSION LLI_CLASS_APPLICATION + 0x0001
#define LLI_APPLICATION_IDLE LLI_CLASS_APPLICATION + 0x0101
#define LLI_APPLICATION_IDLE_REPEAT LLI_CLASS_APPLICATION + 0x0102
// IMAGE CLASS
#define LLI_IMAGE_WIDTH LLI_CLASS_IMAGE + 0x0001
#define LLI_IMAGE_HEIGHT LLI_CLASS_IMAGE + 0x0002
#define LLI_IMAGE_COLORS LLI_CLASS_IMAGE + 0x0003
#define LLI_IMAGE_DENSITY LLI_CLASS_IMAGE + 0x0004
#define LLI_IMAGE_BITS LLI_CLASS_IMAGE + 0x0005
// Memory devices types ------------------------------------------------------
#define LLI_MEMORY 1 // Memory Device
#define LLI_MEMORY_BW 1 // 1 bit / pixels
#define LLI_MEMORY_16 4 // 4 bits / pixels
#define LLI_MEMORY_256 8 // 8 bits / pixels
#define LLI_MEMORY_16M 24 //24 bits / pixels
// Screen devices types ------------------------------------------------------
#define LLI_SCREEN 2 // Screen Device
#define LLI_SCREEN_WINDOW_HANDLE 100 // Screen Device / Windows
#define LLI_SCREEN_DEVICE_CONTEXT 200 // Screen Device / Device Context
#define LLI_SCREEN_DESKTOP 1
#define LLI_SCREEN_WINDOW 2
#define LLI_SCREEN_CLIENT_AREA 3
// Disk devices types --------------------------------------------------------
#define LLI_DISK 3 // Disk device
#define LLI_DISK_BMP 100 // BMP file format
#define LLI_DISK_TIF 200 // TIF file format
#define LLI_DISK_PCX 300 // PCX file format
#define LLI_DISK_GIF 400 // GIF file format
#define LLI_DISK_JPG 500 // JPG file format
// ƒø | IMAGE | IMAGE | LLIBI |
// Mono-color-lib availability √ƒƒ> | B&W | COLOR | VERSION |
// ƒŸ | | | |
#define LLI_DISK_COMPRESS_NIL 1 // No compression for BMP or TIF | YES | YES | STD-PRO |
#define LLI_DISK_COMPRESS_AUTO 000 // Automatic best compression format | YES | YES | STD-PRO |
#define LLI_DISK_COMPRESS_RLE 100 // Run lenght encoding for TIF or PCX | YES | YES | STD-PRO |
#define LLI_DISK_COMPRESS_CCITT1D 110 // Modified Huffman for TIF | YES | NO | STD-PRO |
#define LLI_DISK_COMPRESS_PCKBIT 120 // Packed bits for TIF | YES | NO | STD-PRO |
#define LLI_DISK_COMPRESS_CCITTG3 130 // Group 3 for TIF 1D | YES | NO | PRO |
#define LLI_DISK_COMPRESS_CCITTG4 140 // Group 4 for TIF | YES | NO | PRO |
#define LLI_DISK_COMPRESS_LZW 160 // Lempel for TIF | YES | YES | PRO |
#define LLI_DISK_COMPRESS_JPEG 170 // JPEG for JPG | NO | YES | PRO |
// Printer devices types -----------------------------------------------------
#define LLI_PRINTER 4 // Printer device
#define LLI_PRINTER_LPT1 1 // Print to LPT1
#define LLI_PRINTER_LPT2 2 // Print to LPT2
#define LLI_PRINTER_LPT3 3 // Print to LPT3
// Scanner devices types -----------------------------------------------------
#define LLI_SCANNER 5 // Scanning device
#define LLI_SCANNER_HP_BW 100 // HP SCANJET Black & White
#define LLI_SCANNER_HP_DITHERED_4 110 // HP SCANJET dithering 4x4 Text
#define LLI_SCANNER_HP_DITHERED_8 111 // HP SCANJET dithering 8x8 Photos
#define LLI_SCANNER_HP_GRAY_256 120 // HP SCANJET 256 Gray Levels
#define LLI_SCANNER_HP_COLOR_256 130 // HP SCANJET 256 Colors
#define LLI_SCANNER_TWAIN 200 // Twain
// Multi purposes -------------------------------------------------------------
#define LLI_FULL_SIZE -1 // Mean max size for a document
#define LLI_DPI_75 75 // 75 Dots per inches density
#define LLI_DPI_100 100 // 100 Dots per inches density
#define LLI_DPI_150 150 // 150 Dots per inches density
#define LLI_DPI_300 300 // 300 Dots per inches density
#define LLI_DPI_600 600 // 600 Dots per inches density
#define LLI_DPI_1200 1200 // 1200 Dots per inches density
// Idle call modes ------------------------------------------------------------
#define LLI_IDLE_INIT 10 // Init phase for a Light Lib Images function execution
#define LLI_IDLE_IDLE 20 // Idle phase for a Light Lib Images function execution
#define LLI_IDLE_EXIT 30 // Exit phase for a Light Lib Images function execution
// Idle return modes
#define LLI_IDLE_CONT 1 // Idle function continue message for Light Lib Images functions
#define LLI_IDLE_ABORT 0 // Idle function abort message for Light Lib Images functions
// Action caller defines
#define LLI_CALLER_GET 10 //
#define LLI_CALLER_PUT 20 //
#define LLI_CALLER_COPY 30 //
// iCopy Modes
#define LLI_COPY_CLONE 10 // iCopy() clone message
#define LLI_COPY_ZOOM 20 // iCopy() zoom message
#define LLI_COPY_TURN 30 // iCopy() turn message
#define LLI_COPY_QUANTIZE 40 // iCopy() Quantize message
#define LLI_SCALE_GRAY 50
#define LLI_SCALE_COLOR 51
#define LLI_DITHER_ON 60
#define LLI_DITHER_OFF 61
#define LLI_TURN_90 90 // iCopy(LLI_COPY_TURN) 90¯
#define LLI_TURN_180 180 // iCopy(LLI_COPY_TURN) 180¯
#define LLI_TURN_270 270 // iCopy(LLI_COPY_TURN) 270¯
// Palettes
#define LLI_PALETTE_SHARED 0x1000
#define LLI_PALETTE_EXCLUSIVE 0x2000
/***************************************************************************/
/******************************* Functions *********************************/
/***************************************************************************/
typedef DWORD ( EXPORTED * LLI_IDLE )
(
DWORD dwType,
long lParam,
LLOBJECT lloImage,
DWORD dwAction,
DWORD dwDevice,
DWORD dwFormat,
DWORD dwUdfParam
);
LLOBJECT EXPORTED
iGet (
LLOBJECT lloOwner,
DWORD dwDevice,
DWORD dwFormat,
int iX1,
int iY1,
int iX2,
int iY2,
DWORD dwPar1,
DWORD dwPar2,
DWORD dwPar3,
DWORD dwPar4,
DWORD dwPar5,
DWORD dwUdfParam
);
DWORD EXPORTED
iPut (
LLOBJECT lloImage,
int iX1,
int iY1,
int iX2,
int iY2,
DWORD dwDevice,
DWORD dwFormat,
int iXr,
int iYr,
DWORD dwPar1,
DWORD dwPar2,
DWORD dwPar3,
DWORD dwPar4,
DWORD dwPar5,
DWORD dwUdfParam
);
LLOBJECT EXPORTED
iCopy (
LLOBJECT lloImgSrc,
int iX1,
int iY1,
int iX2,
int iY2,
DWORD dwType,
DWORD dwPar1,
DWORD dwPar2,
DWORD dwPar3,
DWORD dwPar4,
DWORD dwPar5,
DWORD dwUdfParam
);